package com.project.mapper;

import com.project.bean.FacilitiesBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface IFacilitiesMapper {
    /**
     * 通过房间查询穗槐设施记录
     *
     * @param roomId 房间id
     * @return 穗槐设施集合
     */
    public List<FacilitiesBean> findByRoom(int roomId);

    /**
     * 添加损坏设施记录 同时将房间的状态修改为"设施损坏"
     *
     * @param facilitiesBean 损坏设施对象
     */
    public void add(@Param("facilitiesBean") FacilitiesBean facilitiesBean,
                    @Param("roomId") int roomId);

    /**
     * 按id修改设施记录状态 从 未解决 变成 解决
     * 统计该房间的 未解决设施状态，如果为0，则修改房间状态为 正常
     *
     * @param facilitiesId 损坏设施的id
     * @param roomId       房间id
     */

    public void updateFacilities(@Param("facilitiesId") int facilitiesId,
                                 @Param("roomId") int roomId);

    /**
     * 按房间id删除设施记录
     * @param roomId 房间id
     */
    public  void  delete(int roomId);

    /**
     * 按照设施id修改设施状态
     * @param facilityId 设施id
     * @param status 状态
     */
    public  void  update(@Param("facilityId") int facilityId,
                         @Param("status") String status);

    /**
     * 统计指定房间指定状态的设施记录数量
     * @param roomId 房间id
     * @param status 房间状态
     * @return
     */
    public  int countRoom(@Param("roomId") int roomId,
                          @Param("status") String status);


}
